package br.iesb.bean;

import br.iesb.bean.boat.ETiro;
import br.iesb.bean.boat.Embarcacao;

public class Jogador {
	private String name;
	private static int countPlayer = 0;
	
	public Jogador(){
		countPlayer++;
		this.name = "Player " + countPlayer;
		System.out.println("Player : " + this.name + " added.");
	}
	
	public Jogador(String name){
		countPlayer++;
		this.name = name;
		System.out.println("Player : " + this.name + " added.");
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}
	
	
	public boolean tiro(Posicao posicao , Tabuleiro tab){
		int index = tab.getPosicoes().indexOf(posicao);
		System.out.println(String.format("Shooted at L%d-C%d, ", posicao.getLinha(), posicao.getColuna()));
		for (Embarcacao boat : tab.getColEmbarcacao()) {
			for(Posicao possiblePosition : boat.getPosicoesOcupadas()){
				if(possiblePosition.getLinha() == posicao.getLinha() && possiblePosition.getColuna()== posicao.getColuna()){
					System.out.println("Boat hit!!!");
					tab.getPosicoes().get(index).setEstado(ETiro.HIT);
					System.out.println(tab.desenharTabuleiro());
					return true;
				}
			}
		}
		System.out.println("Water!!!");
		tab.getPosicoes().get(index).setEstado(ETiro.MISS);
		System.out.println(tab.desenharTabuleiro());
		return false;
	}
}
